package chapter02;

public class Java02_Identifier {
    public static void main(String[] args) {
        // TODO 标识符
        // 标识数据得符号称之为标识符
        // 变量名称就是标识符
        // 标识符主要用于起名
        String name = "张三";

        // TODO 标识符的命名规则
        // 1.英文拉丁字符
        String username = "zhangsan";
        String xingming = "lisi";

        // 2.符号 @、#、%、$
        // 标识符只能采用下划线和美元符号，其他符号不能使用的称之为特殊符号
        // 空格属于特殊符号，不能作为标识符使用
        String _name = "wangwu";
        String $name = "wangwu";
        String $na_me = "wangwu";
        System.out.println(_name);
        System.out.println($name);
        System.out.println($na_me);

        // 3.数字
        // 阿拉伯数字0-9可以作为标识符使用，但是不能开头
        // 数字在标识符开头会被识别为数据而不是标识符发生报错 eg：String 1name = "zhangsan";
        String name1 = "zhangsan";

        // 4.在{}范围内，标识符不允许重复
        //String name = "zhangsan";   报错：Variable 'name' is already defined in the scope
        // 标识符区分大小写
        String Name = "zhangsan";

        // 5.Java语言中预先定义好了一些标识符名称，称之为关键字或保留字
        // 可以使用大写实现关键字名称的定义，但容易产生歧义
        //String static = "zhangsan";
        String Static = "zhangsan";

        // 6.驼峰标识符：规范
        String userName = "zhangsan";

        // 7.标识符的长度 没有长度的限制

        // 中文是否可以用于命名标识符？ 答：可以，但容易出现乱码
        String 中文 = "zhangsan";
        System.out.println(中文);
    }
}
